import axios from "axios";
import {getJwt, removeJwt} from "@/api/jwt.js";

//创建一个axios实例
let api = axios.create({
    baseURL: "/api",
    timeout: 3000
});

//配置响应拦截器
api.interceptors.response.use(resp => {

    return resp.data;
}, resp => {//非200状态码
    //console.log(resp);
    let data = resp.response.data;//后台响应的数据
    if (resp.status === 401) {//认证未通过
        removeJwt();
        sessionStorage.removeItem('userRole'); // 同时清除用户角色信息
        location.href = "/login";
    }
    return data;
});

//配置请求拦截器
api.interceptors.request.use(config => {
    //在请求头中携带jwt
    config.headers["Authorization"] = getJwt();
    return config;
}, error => {
    return Promise.reject(error);
});

export default api;